package com.vavr.checkincms.common.domain;

import lombok.AllArgsConstructor;

/**
 * ResultEnum
 *
 * @since 2.0.0
 */
@AllArgsConstructor
public enum ResultEnum implements Result {
    /**
     * 成功
     */
    OK("000", "成功"),

    /**
     * 系统异常，请稍后重试！
     */
    ERROR("999", "系统异常，请稍后重试！"),

    /**
     * 非法请求
     */
    UNAUTHORIZED_REQUEST("001", "非法请求"),

    /**
     * 签到失败，请稍后重试！
     */
    CHECKIN_ERROR("002", "签到失败，请稍后重试！"),

    /**
     * 未登录
     */
    NOT_CHECKIN("004", "未登录"),

    /**
     * 签到失效，请重新签到！
     */
    CHECKIN_OUT_TIME("005", "签到失效，请重新签到！"),

    /**
     * 不在签到时间范围内
     */
    NOT_IN_CHECK_IN_RANGE("006", "不在签到时间范围内"),
    /**
     * 会议不存在
     */
    MEETING_NOT_EXIST("007", "会议无效"),

    /**
     * 签名认证失败
     */
    AUTHENTICATE_ERROR("008", "签名认证失败"),

    /**
     * AppId异常
     */
    APP_ID_ERROR("009", "AppId异常"),

    /**
     * 登录失败
     */
    LOGIN_ERROR("010", "登录失败"),

    /**
     * 登录chat-ai失败
     */
    LOGIN_CHAT_AI_ERROR("011", "登录问答助手失败"),

    /**
     * 数据不存在
     */
    NO_USER_INFO("012", "数据不存在"),

    /**
     * 缺少必填字段
     */
    MISS_PARAM("013", "缺少必填字段"),

    /**
     * 添加用户成功
     */
    ADD_USER_SUCCESS("017", "新增/修改用户成功"),

    /**
     * 新增/修改用户失败
     */
    ADD_USER_ERROR("018", "新增/修改用户失败"),

    /**
     * 用户已经存在
     */
    USER_ALREADY_EXISTS("019", "账号或手机号已存在"),
    ;

    /**
     * 返回码
     */
    private final String code;

    /**
     * 返回信息
     */
    private final String msg;

    @Override
    public String getCode() {
        return this.code;
    }

    @Override
    public String getMsg() {
        return this.msg;
    }
}
